// Copyright 叶湘 ( weixin:yexiang841, email:yexiang841@qq.com ), Shitouren Studio. All Rights Reserved.

#pragma once

#include "CoreMinimal.h"
#include "UObject/Interface.h"
#include "Q3D_CPPI_PlayerController.generated.h"

// This class does not need to be modified.
UINTERFACE(MinimalAPI, Blueprintable, meta = (Tooltip = "使用 PlayerController 必须实现的接口(C++)"))
class UQ3D_CPPI_PlayerController : public UInterface
{
	GENERATED_BODY()
};

/**
 *
 */
class Q3D_LIB_API IQ3D_CPPI_PlayerController
{
	GENERATED_BODY()

	// Add interface functions to this class. This is the class that will be inherited to implement this interface.
public:
	UFUNCTION(BlueprintCallable, BlueprintNativeEvent, Category = Q3D_I_PlayerController, meta = (Tooltip = "Q3D_PlayerController 接口，Q3D_Pawn/Q3D_Charactor 被操控时马上触发一次回调"))
	void Q3D_IF_Pawn_Possessed(UPARAM(DisplayName = "ptr_a_pawn") APawn *ptr_a_pawn, UPARAM(DisplayName = "boool_success") bool &bool_success, UPARAM(DisplayName = "string_log") FString &string_log);
};
